草庐IT

SVG 实例

全部标签

JavaScript 和 SVG : how do you increase the clickable area for an onClick event?

我的脚本以3的stroke-width在屏幕上绘制线条。线条的大小(在视觉上)很理想,但它们不太容易点击。举个粗略的例子:functionselectStrand(evt){current_id=evt.target.getAttributeNS(null,"id");document.getElementById('main').innerHTML=current_id;}Selectedline:有没有一种简单的方法可以增加每条线周围的区域,使其更易于点击? 最佳答案 对于每条线,尝试在其上绘制一条具有更大笔划宽度的透明线,并在

javascript - 为什么内联实例创建行为不同?

考虑这段代码:functionFoo(){}Foo.prototype.alert=function(){alert(this);}(newFoo()).alert();执行时(在jsfiddle中),警报显示“this”是窗口对象。将最后一行更改为:varfoo=newFoo();foo.alert();按预期工作。为什么不同? 最佳答案 你的代码实际上是:functionFoo(){}Foo.prototype.alert=function(){alert(this);}(newFoo()).alert();因为少了分号,加个分

javascript - Backbone-relational 不能实例化两个 RelationalModel 对象

我正在尝试实现BackboneRelational并不断获得"CannotinstantiatemorethanoneBackbone.RelationalModelwiththesameidpertype!"classApp.Models.UserextendsBackbone.RelationalModelurlRoot:'/api/users'idAttribute:'id'relations:[type:Backbone.HasManykey:'plots'relatedModel:'App.Models.Plot'collectionType:'App.Collections

javascript - 如何使用 javascript 克隆 SVG 元素?

我正在尝试按照示例here在cloneNode部分下(文档中第四次出现“cloneNode”)。该文件说这是一个草稿,所以我想知道这些功能是否还不存在于SVG中??这是我的HTML:varRoot=document.documentElementfunctionclone(){varG=document.getElementById("groupid")alert('hi')varNewG=G.cloneNode(true)alert('bye')varmove="translate("+0+","+30+")"NewG.setAttributeNS(null,"transform",

javascript - 创建在单个服务器上运行的 meteor.js 应用程序的多个实例所需的主要步骤是什么?

我设计了一个meteor.js应用程序,它在本地主机上运行良好,甚至在部署到Internet时也运行良好。现在我想创建一个注册站点,该站点将为每个在后端注册的客户启动应用程序的新实例。假设一个meteor.js应用程序和python或javascript用于注册站点,需要采取哪些高级步骤来实现它?我正在寻找一个更正确和完整的答案,它采用我想象不到的版本形式:使用诸如node或python之类的东西来调用可能会或可能不会以sudo方式运行的shell脚本该脚本可能会创建一个新文件夹来保存特定于实例的内容(例如客户端文件、配置和/或该实例数据库)。脚本或python代码会将应用程序的实例部

javascript - 如何获取 SVG tspan 元素的宽度

我正在尝试获取SVG中tspan元素(位于text元素内)的呈现宽度。这是我的标记:Value1Value2在视觉上,我希望值1向左浮动,而值2向右浮动,以便多个元素将这样对齐:Value1Value2Value10Value20Value100Value200Value1000Value2000因为我想要tpsan的宽度(“值1”/“值2”)而不是文本元素,所以我不能使用getBBox(),因为该方法不适用于tspan元素。奇怪的是,使用jQuery的width()方法将在Chrome中返回正确的值,但在Firefox中返回NaN。任何想法将不胜感激。 最

javascript - 在 G 标签中包装现有的 SVG 元素

这似乎是一个简单的问题,但我很难回答:Isitpossibleto"wrap"existingSVGshapesinanewSVGgtag(i.e.group)usingd3.js,.wrap()在jQuery中的工作方式?如果我只是“手动”创建一个新的g标签,那么我将如何将现有元素移动到该g中? 最佳答案 如果您将现有的DOM元素传递给append或insert,该元素(及其子元素)将从它们在DOM层次结构中的当前位置移动到您'刚刚插入它们。varstuffToBeWrapped=d3.selectAll(".stuff");st

javascript - 扩展原生 d3 组件(如 d3.svg.axis())的惯用方法是什么?

对于d3中的时间序列可视化,我想在轴上突出显示年份。我通过制作我自己的xAxis渲染器实现了这一点,它调用nativeaxis函数,然后实现我自己的自定义逻辑来格式化它渲染的刻度。我就是这样做的(seeworkingexampleonjsbin):xAxis=d3.svg.axis().scale(xScale)customXAxis=function(){xAxis(this);d3.selectAll('.tick',this).classed("year",isYear);};...xAxis.ticks(10);xAxisElement=canvas.append("g").c

javascript - 如何在 Monaco Editor 实例中设置制表符宽度?

我想在monacoeditor的实例中设置缩进宽度(以空格为单位).到目前为止,我已经能够通过传入IEditorOptions中的任何一个来自定义许多选项。在初始化期间。这些选项也可以稍后在编辑器实例上使用updateOptions方法自定义,如以下示例所示://Manysettingscanbeappliedatinitializationvareditor=monaco.editor.create(document.getElementById("editor"),{language:"html",value:"HelloWorld!",});//...theycanalsobec

javascript - 如何获取分组 svg 元素的全局坐标?

假设我有以下document(fiddle):如果我不知道rect元素在一个组中,我如何获取它的全局坐标? 最佳答案 其实有点难找。搜索SVGElement的方法会导致页面显示SVGElement没有方法!它实际上有很多方法,但它们是继承的:http://www.w3.org/TR/SVG/types.html#InterfaceSVGLocatable根据您的需要,您可以使用getCTM或getScreenCTM的结果来转换SVGPoint,从而了解您的元素在哪里:root=document.getElementById('roo